package cn.exrick.xboot.base.service

import cn.exrick.xboot.base.entity.DepartmentUser
import cn.exrick.xboot.core.common.vo.PageVo
import cn.exrick.xboot.core.common.vo.Result
import com.baomidou.mybatisplus.extension.service.IService

/**
 * 行业接口
 * @author Fei
 */
interface IDepartmentUserService : IService<DepartmentUser?> {


    /**
     * 通过用户id获取用户部门信息
     */
    fun getDepartmentUserByUserId(userId: String): DepartmentUser?

    /**
     * 添加下级政府部门用户
     */
    fun createDepartmentUser(departmentUser: DepartmentUser): Result<Any?>?


    /**
     * 更新政府部门用户
     */
    fun updateDepartmentUser(departmentUser: DepartmentUser): Result<Any?>?


    /**
     * 移除政府部门用户
     */
    fun removeDepartmentUser(ids: Array<out String>): Result<Any?>?


    /**
     * 获取政府部门用户列表
     */
    fun getDepartmentUserList(pageVo: PageVo, departmentUser: DepartmentUser, levelType: Int): Result<MutableMap<String, Any?>>?


    /**
     * 重置账号密码
     */
    fun resetPassword(id: String): Result<Any>
}